gpt4 book ai didi

c++ - 获取 "does not name a type error",但我正在命名一个类型

转载 作者:行者123 更新时间:2023-11-30 01:47:44 25 4
gpt4 key购买 nike

我确定我在这里忽略了一些基本的东西,但我想不通。我有这段代码:

boost::asio::io_service smpp_io_service;
tcp::endpoint endpoint(ip::address_v4::from_string("192.168.0.25"), 2775);
std::shared_ptr<tcp::socket> smpp_socket(new tcp::socket(smpp_io_service));
smpp_socket->connect(endpoint);
SmppClient client(smpp_socket);


void wx_test2Frame::OnButton1Click(wxCommandEvent& event)
{
Logger::out( "Connecting..." );

try {

client.setVerbose(true);
client.bindTransceiver(txtSystemId->GetValue().ToStdString(), txtPassword->GetValue().ToStdString());
Logger::out( "Connected" );

前 5 行在 OnButton1Click 中时工作正常功能,但是一旦我将它们移到外面(因为我不希望连接在功能结束时关闭),我得到

error: smpp_socket does not name a type

指向 smpp_socket->connect(endpoint);行。

但是正上方的行将类型命名为 std::shared_ptr<tcp::socket> ,不是吗?

我做错了什么?

最佳答案

命名空间范围只能包含声明,smpp_socket->connect(endpoint); 不是声明 - 它是声明。

C++ 标准部分 [basic.link]/1 内容如下:

A program consists of one or more translation units (Clause 2) linked together. A translation unit consists of a sequence of declarations.

关于c++ - 获取 "does not name a type error",但我正在命名一个类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31191719/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com