指定した 2 つの Decimal 値を減算します。
returnValue = Decimal.op_Subtraction(d1, d2)
[C#]
public static decimal operator -(decimald1,decimald2);
[C++]
public: static Decimal op_Subtraction(Decimald1,Decimald2);
[JScript]
returnValue = d1 - d2;
[Visual Basic] Visual Basic では、この型で定義されている演算子を使用することができます。ただし、独自に定義することはできません。Subtract メソッドを Decimal 減算演算子の代わりに使用することができます。
[JScript] JScript では、この型で定義されている演算子を使用することができます。ただし、独自に定義することはできません。
引数 [Visual Basic, JScript]
パラメータ [C#, C++]
戻り値
d1 から d2 を減算した結果の Decimal 。
例外
例外の種類 | 条件 |
---|---|
OverflowException | 戻り値が MinValue より小さい値か、 MaxValue より大きい値です。 |
使用例
[Visual Basic, C#, C++] Decimal 値の複数のペアを作成し、各ペアの差を Subtraction 演算子で計算するコード例を次に示します。
' Example of the Decimal addition and subtraction operators.
Imports System
Imports Microsoft.VisualBasic
Module DecimalAddSubOpsDemo
Const dataFmt As String = "{0,-38}{1,31}"
' Display Decimal parameters and their sum and difference.
Sub ShowDecimalSumDiff( Left as Decimal, Right as Decimal )
Console.WriteLine( )
Console.WriteLine( dataFmt, "Decimal Left", Left )
Console.WriteLine( dataFmt, "Decimal Right", Right )
' The op_Addition and op_Subtraction operators must be
' explicitely coded in Visual Basic. If binary + or - are
' used, other methods are called.
Console.WriteLine( dataFmt, _
"Decimal.op_Addition( Left, Right )", _
Decimal.op_Addition( Left, Right ) )
Console.WriteLine( dataFmt, _
"Decimal.op_Subtraction( Left, Right )", _
Decimal.op_Subtraction( Left, Right ) )
End Sub
Sub Main( )
Console.WriteLine( _
"This example of the Decimal addition and " & _
"subtraction operators " & vbCrLf & "generates the " & _
"following output. It displays the sum and " & vbCrLf & _
"difference of several pairs of Decimal objects." )
' Create pairs of Decimal objects.
ShowDecimalSumDiff( _
new Decimal( 1230000000, 0, 0, False, 7 ), _
0.0012300D )
ShowDecimalSumDiff( 123.456789D, 0.006789D )
ShowDecimalSumDiff( 12345678900000000D, _
0.00000000123456789D )
ShowDecimalSumDiff( 123456789.0123456789D, _
123456789.1123456789D )
End Sub
End Module
' This example of the Decimal addition and subtraction operators
' generates the following output. It displays the sum and
' difference of several pairs of Decimal objects.
'
' Decimal Left 123.0000000
' Decimal Right 0.00123
' Decimal.op_Addition( Left, Right ) 123.0012300
' Decimal.op_Subtraction( Left, Right ) 122.9987700
'
' Decimal Left 123.456789
' Decimal Right 0.006789
' Decimal.op_Addition( Left, Right ) 123.463578
' Decimal.op_Subtraction( Left, Right ) 123.450000
'
' Decimal Left 12345678900000000
' Decimal Right 0.00000000123456789
' Decimal.op_Addition( Left, Right ) 12345678900000000.000000001235
' Decimal.op_Subtraction( Left, Right ) 12345678899999999.999999998765
'
' Decimal Left 123456789.0123456789
' Decimal Right 123456789.1123456789
' Decimal.op_Addition( Left, Right ) 246913578.1246913578
' Decimal.op_Subtraction( Left, Right ) -0.1000000000
[C#]
// Example of the decimal addition and subtraction operators.
using System;
class DecimalAddSubOpsDemo
{
const string dataFmt = " {0,-18}{1,31}" ;
// Display decimal parameters and their sum and difference.
static void ShowDecimalSumDiff( decimal Left, decimal Right )
{
Console.WriteLine( );
Console.WriteLine( dataFmt, "decimal Left", Left );
Console.WriteLine( dataFmt, "decimal Right", Right );
Console.WriteLine( dataFmt, "Left + Right",
Left + Right );
Console.WriteLine( dataFmt, "Left - Right",
Left - Right );
}
static void Main( )
{
Console.WriteLine( "This example of the decimal " +
"addition and subtraction operators \ngenerates the " +
"following output. It displays the sum and \n" +
"difference of several pairs of decimal objects." );
// Create pairs of decimal objects.
ShowDecimalSumDiff(
new decimal( 1230000000, 0, 0, false, 7 ),
0.0012300M );
ShowDecimalSumDiff( 123.456789M, 0.006789M );
ShowDecimalSumDiff( 12345678900000000M,
0.00000000123456789M );
ShowDecimalSumDiff( 123456789.0123456789M,
123456789.1123456789M );
}
}
/*
This example of the decimal addition and subtraction operators
generates the following output. It displays the sum and
difference of several pairs of decimal objects.
decimal Left 123.0000000
decimal Right 0.0012300
Left + Right 123.0012300
Left - Right 122.9987700
decimal Left 123.456789
decimal Right 0.006789
Left + Right 123.463578
Left - Right 123.450000
decimal Left 12345678900000000
decimal Right 0.00000000123456789
Left + Right 12345678900000000.000000001235
Left - Right 12345678899999999.999999998765
decimal Left 123456789.0123456789
decimal Right 123456789.1123456789
Left + Right 246913578.1246913578
Left - Right -0.1000000000
*/
[C++]
// Example of the Decimal addition and subtraction operators.
#using <mscorlib.dll>
using namespace System;
// Display Decimal parameters and their sum and difference.
void ShowDecimalSumDiff( Decimal Left, Decimal Right )
{
String* dataFmt = S" {0,-18}{1,31}" ;
Console::WriteLine( );
Console::WriteLine( dataFmt, S"Decimal Left", __box( Left ) );
Console::WriteLine( dataFmt, S"Decimal Right", __box( Right ) );
Console::WriteLine( dataFmt, S"Left + Right",
__box( Left + Right ) );
Console::WriteLine( dataFmt, S"Left - Right",
__box( Left - Right ) );
}
void main( )
{
Console::WriteLine( S"This example of the Decimal "
S"addition and subtraction operators \ngenerates the "
S"following output. It displays the sum and \n"
S"difference of several pairs of Decimal objects." );
// Create pairs of Decimal objects.
ShowDecimalSumDiff(
Decimal( 1230000000, 0, 0, false, 7 ),
Decimal::Parse( S"0.0012300" ) );
ShowDecimalSumDiff( Decimal::Parse( S"123.456789" ),
Decimal::Parse( S"0.006789" ) );
ShowDecimalSumDiff( Decimal::Parse( S"12345678900000000" ),
Decimal::Parse( S"0.00000000123456789" ) );
ShowDecimalSumDiff( Decimal::Parse( S"123456789.0123456789" ),
Decimal::Parse( S"123456789.1123456789" ) );
}
/*
This example of the Decimal addition and subtraction operators
generates the following output. It displays the sum and
difference of several pairs of Decimal objects.
Decimal Left 123.0000000
Decimal Right 0.0012300
Left + Right 123.0012300
Left - Right 122.9987700
Decimal Left 123.456789
Decimal Right 0.006789
Left + Right 123.463578
Left - Right 123.450000
Decimal Left 12345678900000000
Decimal Right 0.00000000123456789
Left + Right 12345678900000000.000000001235
Left - Right 12345678899999999.999999998765
Decimal Left 123456789.0123456789
Decimal Right 123456789.1123456789
Left + Right 246913578.1246913578
Left - Right -0.1000000000
*/
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET, Common Language Infrastructure (CLI) Standard