标签: declaration

C++重载了运算符声明和定义问题

我很难让这个工作

file: myclass.hpp

Class MyClass {
public:
  template <class T>    
  MyClass &operator<<(const T &val);
};


file: myclass.cpp

template <class T>
MyClass &MyClass::operator<<(const T &val) {
   ...  
}
Run Code Online (Sandbox Code Playgroud)

我可以将这个编译成一个没有问题的对象,但是当其他函数试图调用它时,会出现这个错误(每次使用<<时).

myclass.cpp: undefined reference to `MyClass& MyClass::operator<< <int>(int const&)'
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

c++ declaration definition

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

Java在变量定义之外声明数组

我正在寻找一种方法,例如,在声明之外直接给java数组赋值

/*this works*/
int a[] = {1,2,3};

/*this doesn't*/
a = {1,2,3};
Run Code Online (Sandbox Code Playgroud)

动机是这样的,可以使用数组作为参数的方法

public void f(int a[]) {
 /*do stuff*/
}

f({1,2,3});
Run Code Online (Sandbox Code Playgroud)

代替

int a[] = {1,2,3};
f(a);
Run Code Online (Sandbox Code Playgroud)

java arrays declaration

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

我可以声明一个数组,其中一个数组元素是未声明的变量吗?(红宝石)

#input_from_the_net = ""

my_array = [ ["Header name" , input_from_the_net] ]

input_from_the_net = "a value scraped from the net"

puts "#{my_array[0][0]} is #{my_array[0][1]}"
Run Code Online (Sandbox Code Playgroud)

编辑:

input_from_the_net稍后在循环中使用变量并将其值分配给散列.然后将该哈希存储在另一个哈希中.如果我使用input_from_the_net.replace("a value scraped from the net")它替换所有哈希值中的值.这是不希望的.我希望所有哈希都保持正确的值.

EDIT2:更详细的示例代码

`require 'pp'
input_from_the_net = ""

def parse_the_website()
  (0..5).each { |index| 
    input_from_the_net = index+23
    @my_hash[index] = {@my_array[0][0] => input_from_the_net}
  } 
end

@my_array = [ ["Header name" , input_from_the_net] ] 
       #my_array is used on different places of the code

@my_hash = {}
parse_the_website
pp @my_hash
Run Code Online (Sandbox Code Playgroud)

Q1:我可以做这项工作而不是改变线的顺序 …

ruby declaration

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

Java:为什么声明在界面上不够用?

大类包含Format-interfcase和Format-class.Format-class包含方法,接口具有字段的值.我可以在类Format中使用字段,但目标是使用Interface.那么我只是创建虚拟变量以消除错误,设计问题或ELSE?

KEY:声明VS初始化

  1. 通过术语解释,为什么你必须在接口中初始化.
  2. 它背后的逻辑是什么?
  3. 它引导界面使用哪种问题?

示例代码具有init-interface-problem

import java.util.*;
import java.io.*;

public class FormatBig
{

        private static class Format implements Format
        {
                private static long getSize(File f){return f.length();}
                private static long getTime(File f){return f.lastModified();}
                private static boolean isFile(File f){if(f.isFile()){return true;}}
                private static boolean isBinary(File f){return Match.isBinary(f);}
                private static char getType(File f){return Match.getTypes(f);}
                private static String getPath(File f){return getNoErrPath(f);}
                //Java API: isHidden, --- SYSTEM DEPENDED: toURI, toURL


                Format(File f)
                {
                  // PUZZLE 0: would Stack<Object> be easier?
                        size=getSize(f);
                        time=getTime(f);
                        isfile=isFile(f);
                        isBinary=isBinary(f); …
Run Code Online (Sandbox Code Playgroud)

java initialization interface declaration

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

C++:声明一个带有函数的类,它处理字符串

我没有使用搜索找到我的问题的答案,但我认为这很简单而且很受欢迎.无论如何,我的问题是:我有一个头文件,它声明了一个类和函数.它看起来像这样:

#ifndef SOME_CLASS_H
#define SOME_CLASS_H

#include <string>

class mySomeClass
{
    public:

    bool a_func(string & myString, unsigned long int & x);
    void b_func(string & myString, unsigned long int & x);
    void c_func(string & myString, unsigned long int & x);

    void another_func(string & myString, string & myString2);

    }

#endif // SOME_CLASS_H
Run Code Online (Sandbox Code Playgroud)

我认为功能定义现在并不重要.

在编译时,编译器告诉'string'尚未声明,即使我已经添加了#include <string>.除了重写要使用的函数之外,我该如何解决这个问题char*.先感谢您.

完成.谢谢大家.

c++ class declaration definition

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

"@property(nonatomic,strong)"和"@property"之间的区别

Objective-C中这两个声明有什么区别?

我一直在看一些Apple源代码示例,他们在各种情况下使用了第二个.我只想了解为什么以及何时最好使用第二个版本而不是第一个版本(我知道强,弱,原子,非原子之间的区别).

@property(nonatomic, strong) NSObject * myObject;
Run Code Online (Sandbox Code Playgroud)

//对

@property NSObject * myObject2;  //No additional qualifiers 
Run Code Online (Sandbox Code Playgroud)

syntax properties declaration objective-c ios

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

这个声明的含义是什么"int(*ptr [3])();"?

整码:

#include<stdio.h>    
 aaa(){ 
    printf("hi");  
 }  
 bbb(){  
    printf("hello");  
 }  
 ccc(){ 
    printf("ccc");  
 }  
int main(){  
     int(*ptr[3])(); 
     ptr[0]=aaa;  
     ptr[1]=bbb;  
     ptr[3]=ccc;   
     ptr[3]();   
}   
Run Code Online (Sandbox Code Playgroud)

输出将是"再见".
我看到的代码int(*ptr[3])()是某种与int相关的数组声明,它看起来像函数调用.在较低行代码中,函数名称分配给数组,而数组可用于函数调用.有人可以解释一下,什么是声明以及函数调用是如何进行的?

c c++ syntax declaration

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

功能中标识符列表和参数列表的区别?

对于这个引用:

函数声明符中不属于该函数定义的标识符列表应为空.

标识符列表和参数列表之间有什么区别,有人可以提供此引用的示例.

c declaration function definition

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

嵌套朋友类所需的前向声明

假设我有两个类定义如下:

class obj1
{
  private:
    int mem;
    void method1();

  friend class obj2;
};

class obj2
{
  public:
    void method2();
};

void obj2::method2()
{
  obj1 test;
  test.mem = 59999;
  std::cout << test.mem;
  return;
}
Run Code Online (Sandbox Code Playgroud)

这非常有效.在main中,如果我声明一个obj2类型的对象然后调用它的method2成员函数,它可以成功地从obj1的实例访问私有变量.现在,假设我将这些类嵌套:

class parent
{
  public:
  class obj1
  {
    private:
      int mem;
      void method1();

    friend class obj2;
  };

  class obj2
  {
    public:
      void method2();
  };
  void my_function();
};

void parent::obj2::method2()
{
  obj1 test;
  test.mem = 59999;
  std::cout << test.mem;
  return;
}

void parent::my_function()
{
  obj2 test2;
  obj2.method2();
  return; …
Run Code Online (Sandbox Code Playgroud)

c++ nested class declaration forward

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

Python类声明"位置参数"错误

我正在试验大熊猫.我正在尝试创建一个表示我想要使用的数据的简单对象.为此,我编写了下面的代码来创建一个对象,但我得到了:

TypeError:test_df()缺少1个必需的位置参数:'self

在第13行.我无法弄清楚我做错了什么.也许是关于我没有得到的类声明的概念.任何帮助深表感谢.

import pandas as pd

class ICBC():
   def __init__(self, name, path):
       self.name = name
       self.df = pd.read_csv(path)

   def test_df(self):
       print(self.df.info)


mov = ICBC("matisalimba3","z:\devs\py\movimientos.csv")
ICBC.test_df() <- This is line 13
Run Code Online (Sandbox Code Playgroud)

python class declaration pandas

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