小编jal*_*alf的帖子

这些链接错误意味着什么?(C++)(MSVC++)

编辑:当我将link_def.cpp与link_dec.h合并时,我只得到第一个错误,而不是第二个错误.

当我尝试编译一些代码时,我遇到了这些链接器错误:CODE:

#include"list_dec.h"
#include"catch.h"

int main()
{
    list<int, 100> L1;
    try
    {
        L1.return_current();
    }
    catch(err)
    {
        return -1;
    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

错误:

Linking...
main.obj : error LNK2019: unresolved external symbol "public: __thiscall list<int,100>::~list<int,100>(void)" (??1?$list@H$0GE@@@QAE@XZ) referenced in function __catch$_main$0
main.obj : error LNK2019: unresolved external symbol "public: int __thiscall list<int,100>::return_current(void)" (?return_current@?$list@H$0GE@@@QAEHXZ) referenced in function _main
main.obj : error LNK2019: unresolved external symbol "public: __thiscall list<int,100>::list<int,100>(void)" (??0?$list@H$0GE@@@QAE@XZ) referenced in function _main
Run Code Online (Sandbox Code Playgroud)

如果有人需要list_dec.h,catch.h和list_def.cpp(列表类的定义)的代码,只需注释,我不想包含它们,如果它们是无关紧要的,因为它们非常大.

因为有人想看list_dec.h(我暂时与list_def.cpp合并)list_dec.h:

template<class T, size_t limit>
class list
{
public: …
Run Code Online (Sandbox Code Playgroud)

c++ linker templates

1
推荐指数
1
解决办法
2163
查看次数

浮点等价?

我希望能够比较两个双打,而不考虑可能的精度损失.是否有处理此案例的方法?

如果没有,是否有一个阈值/指导方针来了解两个双打之间有多少相等?

.net floating-point floating-accuracy

1
推荐指数
1
解决办法
242
查看次数

在新功能和标准化过程的重压下,C++ 0x是否会崩溃?

来自Dobbs博士:

概念是C++ 0x的核心新功能

即使在削减"概念"之后,下一个C++标准也可能会延迟.遗憾的是,没有C++ 0x(除非你计算C++ 03中的微小修正).我们必须等待C++ 1x,并希望'x'将是一个低位数.有希望,因为C++ 1x现在功能齐全(除了一些国家标准机构有效坚持标准的正式提案中存在的某些功能的可能性).剩下的"全部"是解决突出技术问题和评论的大量工作.

我在1997年至2000年间处于MT和MP安全C++编程的最前沿.我们自己必须做很多事情.令人震惊的是,该标准在9年后并没有解决并发问题.

那有什么大不了的?

c++ standards c++11

1
推荐指数
2
解决办法
418
查看次数

没有共享所有权的Getters

如何编写一个无法删除的getter?我想拥有变量而不是分享它们.在这里和那里读书我发现无论我什么回来,记忆都可以被释放

但我定义它,这是真的吗?

引用,const指针,无论如何,调用getter的函数都可以删除它,我的私有变量不会被取消但是内存坏了,对吧?

我想开发一个getter,我可以返回我的私有变量,并确保被调用者不能删除它...

我担心,在内部使用私有变量时,被调用者已经破坏了它,然后它在我的内部下一次尝试使用它时崩溃了我的程序

在第一次尝试中我不想使用提升,因为我试图从这个项目中学到最多,如果没有其他方式可以使用提升,或者如果反过来太复杂/多工作

谢谢,

我的另一个问题并没有真正集中,所以我再次这样做了,问这里问题不是问题,对吧?=]

c++ getter

1
推荐指数
1
解决办法
558
查看次数

C/C++中结构的字段对齐

结构的成员是用C/C++打包的吗?(通过打包我的意思是它们是紧凑的,在字段之间没有内存空间)

c c++

1
推荐指数
2
解决办法
7654
查看次数

C++重载+运算符,以便始终连接各种字符串

每次你需要连接两个字符串时,至少需要这样做是非常无意义和麻烦的:

std::string mystr = std::string("Hello") + " World";
Run Code Online (Sandbox Code Playgroud)

我想重载operator +并使用它,以便总是以这种方式在char*之间进行连接:

std::string mystr = "Ciao " + "Mondo".
Run Code Online (Sandbox Code Playgroud)

你会怎么做?我想找到一个最佳实践.谢谢...

啊,助推器有什么可以解决的吗?

c++ string operator-overloading

1
推荐指数
1
解决办法
3115
查看次数

什么是将地图的键集转换为键向量的有效方法

什么是将map的键集转换为键的向量的有效方法,目前我正在迭代我的地图并将iter.first添加到vector中,这类似于Java的KeySet api?

c++ stdmap std stdvector

1
推荐指数
1
解决办法
117
查看次数

C++成语避免内存泄漏?

在以下代码中,如果Info::addPart1()多次意外调用,则会发生内存泄漏:

typedef struct
{
}part1;

typedef struct
{
}part2;

class Info
{
    private:
    part1* _ptr1;
    part2* _ptr2;    

    public:
    Info()
    {
      _ptr1 = _ptr2 = NULL;
    }

    ~Info()
    {
      delete _ptr1; 
      delete _ptr2;
    }

    addPart1()
    {
       _ptr1 = new part1;         
    }

    addPart2()
    {
      _ptr2 = new part2;         
    }   
};


Info _wrapper;
_wrapper.addPart1();
_wrapper.addPart2();
Run Code Online (Sandbox Code Playgroud)

有没有C++成语来处理这个问题?

我可以改写addPart1addPart2喜欢这样来保卫MLK

addPart1()
{
  if(_ptr1 != NULL) delete _ptr1;
  _ptr1 = new part1;         
}
Run Code Online (Sandbox Code Playgroud)

这是一个好的解决方案吗?

c++

0
推荐指数
3
解决办法
3188
查看次数

请从Accelerated C++中解释以下内容

我不明白以下摘自Accelerated C++:

开始于

因为|| 是左关联的,并且由于||,==和 - 的相对优先级,

r == 0 || r == rows - 1 || c == 0 || c == cols - 1表示与我们将所有子表达式放在括号中时相同:

((r == 0 || r ==(rows - 1))|| c == 0)|| c ==(cols - 1)

直到

Otherwise, it does something else, which we must now define.
Run Code Online (Sandbox Code Playgroud)

我不明白这一点.你怎么用你自己的话告诉我一样的?

c++ short-circuiting logical-operators

0
推荐指数
1
解决办法
336
查看次数

这个C++ getter-like语法错了吗?

说我有以下课程:

class Abc {

    int id;

public:

    int getID() {   return id; }


    int setID(int id) { this->id = id; }
};
Run Code Online (Sandbox Code Playgroud)

这有什么逻辑错误吗?我似乎得到了意想不到的结果(读取:id的错误值).我知道这不是编写getter的方法..但是在这段代码中仍然没有任何错误?

这是类声明:

class ClientConn {


  static int num;
  short pos;
  sockaddr_in tcpAddress;
  sockaddr_in udpAddress;
  int connFD;

 public:
  ClientConn();

  int getConnFD();

  void setConnFD(int connFD);

  void setPos(short pos);

  short const& getPos();

  void setUdpAddress(short port);

  void setTcpAddress(sockaddr_in address);

  void setUdpAddress(sockaddr_in address);

  void setTcpAddress(short port, char* serverIP);

  void setUdpAddress(short port, char * serverIP);

  sockaddr_in const& getTcpAddress() const;    

  sockaddr_in const& getUdpAddress() const;



}; …
Run Code Online (Sandbox Code Playgroud)

c++ getter

0
推荐指数
2
解决办法
738
查看次数

C#随机问题

我有两个不同的实现随机函数:

版本1:

  public double myRnd()
        {
            Random rnd = new Random();
            return rnd.NextDouble();
        }                


            //-- Generate Random Number for Delaer
            double DealersCard = myRnd();

            //-- Generate Players  4 Random Number
            double Box1Card = myRnd();
            double Box2Card = myRnd();
            double Box3Card = myRnd();
            double Box4Card = myRnd();
Run Code Online (Sandbox Code Playgroud)

版本2:

       //-- Create  Random  Object 
        var rnd = new Random();

        //-- Generate Random Number for Delaer
        double DealersCard = rnd.NextDouble();

        //-- Generate Players  4 Random Number
        double Box1Card = rnd.NextDouble();
        double Box2Card = rnd.NextDouble(); …
Run Code Online (Sandbox Code Playgroud)

c# random

0
推荐指数
1
解决办法
972
查看次数