小编tra*_*aww的帖子

仅将参数作为参数,在C++中定义operator +

如何在C++中定义operator +的函数对象(以及类型,如int,double或float)作为参数?

我几乎绝对相信这个技巧应该在模板的帮助下以某种方式完成,但由于我是C++的新手,我自己无法想象.

这种函数声明的例子非常好.

c++ templates function parameter-passing

8
推荐指数
2
解决办法
167
查看次数

在C++中创建一个没有名称的对象

在Java中,可以执行以下操作:

function(new Parameter());
Run Code Online (Sandbox Code Playgroud)

在C++中我知道我可以这样做:

Parameter p;
function(p);
Run Code Online (Sandbox Code Playgroud)

但有可能做类似的事情:

function(Parameter p);
Run Code Online (Sandbox Code Playgroud)

在C++中?

c++ initialization object parameter-passing

4
推荐指数
2
解决办法
1686
查看次数

使用C++确定三个数字中的最大数字

如何使用C++确定三个数字中的最大数字?

我需要简化这个

 w=(z>((x>y)?x:y)?z:((x>y)?x:y));
Run Code Online (Sandbox Code Playgroud)

条件不会简化这一点.

c++

4
推荐指数
2
解决办法
319
查看次数

检查引用是否指向C++中的特定对象

如何检查引用是否指向C++中的特定对象?

我的意思是这样的:

int x(0);
int& xR = x;
if(xR == x)
{
//xR is refering to x
}
else
{
//xR is not refering to x
}
Run Code Online (Sandbox Code Playgroud)

c++ equality reference

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

快速计算斐波那契数的方法

如果我将使用以下方法计算Fibonacci数,它将比线性方法更快:

在此输入图像描述

我对吗?

方法是从这里开始的.

algorithm performance fibonacci matrix-multiplication

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

使用括号而不是花括号和等号初始化struct

如何使用括号而不是花括号和等号来初始化struct?

Matrix2x2 m1 = {1, 2, 3, 4};
Matrix2x2 res(5*m1);
Run Code Online (Sandbox Code Playgroud)

这里,例如,第一个结构通过使用花括号和等号来初始化,而第二个结构是通过从乘法结果中复制值来理解初始化.

我想m1以某种方式在括号的帮助下进行初始化.可能吗?

#pragma once

#include <iostream>

struct Matrix2x2
{
    double _00, _01, 
        _10, _11;
};

std::istream& operator>>(std::istream&, Matrix2x2&);
std::ostream& operator<<(std::ostream&, Matrix2x2&);
Matrix2x2 operator*(const double&, const Matrix2x2&);


#include "Matrix.h"

std::istream& operator>>(std::istream& is, Matrix2x2& m)
{
    return is >> m._00 >> m._01 >> m._10 >> m._11;
}

std::ostream& operator<<(std::ostream& os, Matrix2x2& m)
{
    return os << m._00 << ' ' << m._01 << std::endl 
        << m._10 << ' ' << …
Run Code Online (Sandbox Code Playgroud)

c++ curly-braces parentheses

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